package m3u8

import "time"

type MediaSegment struct {
	URI      string
	Sequence uint64        // 片段序号
	Duration time.Duration // 视频时长
	Title    string        // 标题
	Key      *Key          // 视频加密信息
	Map      *Map          // 视频初始化信息
}

type PlayListType string

const (
	PlayListTypeVOD   PlayListType = "VOD"
	PlayListTypeEVENT PlayListType = "EVENT"
)

type MediaPlayList struct {
	Version        uint64         // 版本
	TargetDuration time.Duration  // 每个视频分段最大的时长
	MediaSequence  uint64         // 播放列表第一个 URI 片段文件的序列号
	PlayListType   PlayListType   // 流媒体类型
	Segments       []MediaSegment // 媒体片段列表
}

type MasterPlayList struct {
	Version  uint64          // 版本
	Segments []MasterSegment // 主播列表
}
